HTMLify
app.js
Views: 14 | Author: huxn-webdev
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | const progress = document.getElementById("progress"); const prevBtn = document.getElementById("prev"); const nextBtn = document.getElementById("next"); const circles = document.querySelectorAll(".circle"); let activeIndex = 1; nextBtn.addEventListener("click", () => { activeIndex++; if (activeIndex > circles.length) { activeIndex = circles.length; } updateUI(); }); prevBtn.addEventListener("click", () => { activeIndex--; if (activeIndex < 1) { activeIndex = 1; } updateUI(); }); function updateUI() { circles.forEach((circle, index) => { if (index < activeIndex) { circle.classList.add("active"); } else { circle.classList.remove("active"); } }); const actives = document.querySelectorAll(".active"); progress.style.width = ((actives.length - 1) / (circles.length - 1)) * 100 + "%"; if (activeIndex === 1) { prevBtn.disabled = true; } else if (activeIndex === circles.length) { nextBtn.disabled = true; } else { prevBtn.disabled = false; nextBtn.disabled = false; } } |